package com.ww.orm.entity;

import javax.persistence.*;
import java.util.Objects;

/**
 * @author sunnannan
 * @version 1.0
 * @date 2020/11/23 12:00 下午
 */
@Entity
@Table(name = "act_re_procdef", schema = "aceace", catalog = "")
public class ActReProcdefEntity {
    private String id;
    private Integer rev;
    private String category;
    private String name;
    private String key;
    private int version;
    private String deploymentId;
    private String resourceName;
    private String dgrmResourceName;
    private String description;
    private Byte hasStartFormKey;
    private Byte hasGraphicalNotation;
    private Integer suspensionState;
    private String tenantId;

    @Id
    @Column(name = "ID_")
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "REV_")
    public Integer getRev() {
        return rev;
    }

    public void setRev(Integer rev) {
        this.rev = rev;
    }

    @Basic
    @Column(name = "CATEGORY_")
    public String getCategory() {
        return category;
    }

    public void setCategory(String category) {
        this.category = category;
    }

    @Basic
    @Column(name = "NAME_")
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Basic
    @Column(name = "KEY_")
    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    @Basic
    @Column(name = "VERSION_")
    public int getVersion() {
        return version;
    }

    public void setVersion(int version) {
        this.version = version;
    }

    @Basic
    @Column(name = "DEPLOYMENT_ID_")
    public String getDeploymentId() {
        return deploymentId;
    }

    public void setDeploymentId(String deploymentId) {
        this.deploymentId = deploymentId;
    }

    @Basic
    @Column(name = "RESOURCE_NAME_")
    public String getResourceName() {
        return resourceName;
    }

    public void setResourceName(String resourceName) {
        this.resourceName = resourceName;
    }

    @Basic
    @Column(name = "DGRM_RESOURCE_NAME_")
    public String getDgrmResourceName() {
        return dgrmResourceName;
    }

    public void setDgrmResourceName(String dgrmResourceName) {
        this.dgrmResourceName = dgrmResourceName;
    }

    @Basic
    @Column(name = "DESCRIPTION_")
    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    @Basic
    @Column(name = "HAS_START_FORM_KEY_")
    public Byte getHasStartFormKey() {
        return hasStartFormKey;
    }

    public void setHasStartFormKey(Byte hasStartFormKey) {
        this.hasStartFormKey = hasStartFormKey;
    }

    @Basic
    @Column(name = "HAS_GRAPHICAL_NOTATION_")
    public Byte getHasGraphicalNotation() {
        return hasGraphicalNotation;
    }

    public void setHasGraphicalNotation(Byte hasGraphicalNotation) {
        this.hasGraphicalNotation = hasGraphicalNotation;
    }

    @Basic
    @Column(name = "SUSPENSION_STATE_")
    public Integer getSuspensionState() {
        return suspensionState;
    }

    public void setSuspensionState(Integer suspensionState) {
        this.suspensionState = suspensionState;
    }

    @Basic
    @Column(name = "TENANT_ID_")
    public String getTenantId() {
        return tenantId;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        ActReProcdefEntity that = (ActReProcdefEntity) o;
        return version == that.version &&
                Objects.equals(id, that.id) &&
                Objects.equals(rev, that.rev) &&
                Objects.equals(category, that.category) &&
                Objects.equals(name, that.name) &&
                Objects.equals(key, that.key) &&
                Objects.equals(deploymentId, that.deploymentId) &&
                Objects.equals(resourceName, that.resourceName) &&
                Objects.equals(dgrmResourceName, that.dgrmResourceName) &&
                Objects.equals(description, that.description) &&
                Objects.equals(hasStartFormKey, that.hasStartFormKey) &&
                Objects.equals(hasGraphicalNotation, that.hasGraphicalNotation) &&
                Objects.equals(suspensionState, that.suspensionState) &&
                Objects.equals(tenantId, that.tenantId);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, rev, category, name, key, version, deploymentId, resourceName, dgrmResourceName, description, hasStartFormKey, hasGraphicalNotation, suspensionState, tenantId);
    }
}
